package merge

import (
	"fmt"
	"github.com/Exleryz/m3u8/internal/m3u8/parser"
	"os"
	"path"
)

// ts2mp4 把指定文件夹中的ts文件转换为mp4
func ts2mp4(dirName string) {

}

// TsMerge2Ts 小 ts 文件 合并成一个大的 ts 文件
// count ts文件的数量
// fileName 大文件的名称
func TsMerge2Ts(info *parser.M3U8Info) {
	bigTsFile, err := os.Create(path.Join(info.DirName, info.Name+".ts"))
	if err != nil {
		fmt.Println(err)
		return
	}
	defer bigTsFile.Close()

	var at int64 = 0
	for i := 0; i < len(info.TsList); i++ {
		smallFileName := path.Join(info.DirName, fmt.Sprintf("%d.ts", i))

		smallTsFile, err := os.ReadFile(smallFileName)
		if err != nil {
			fmt.Println(err)
			return
		}
		bigTsFile.WriteAt(smallTsFile, at)
		at += (int64)(len(smallTsFile))
	}

	// remove.DeleteFile(count, "", "ts")
}
